// pages/order/index.js
/**
 * 当点击全部订单跳转时会传递过来一个type值 这个值用来切换页面
 * 我们要在onshow()里面进行接收 但与onload不同 不能在options里接收需要调用 getCurrentPages方法接收我们的参数
 * 而参数存在数组中索引最大的数组里
 * 
 * 2，当点击不同的type进入页面时tabs栏也应选中对应项
 * 封装方法
 */
import { request } from "../../request/index";
import regeneratorRuntime from "../../lib/runtime/runtime";
Page({

  /**
   * 页面的初始数据
   */
  data: {
    tabs:[
      {
        id:0,
        value:"全部订单",
        isActive:true
      },
      {
        id:1,
        value:"待付款",
        isActive:false
      },
      {
        id:2,
        value:"待收货",
        isActive:false
      },
      {
        id:3,
        value:"退货/退款",
        isActive:false
      },
    ]
  },
  onShow:function(){
    //拿到页面数组 页面栈
    let pages =  getCurrentPages();
    //取到当前页面的数组
    let curPages= pages[pages.length-1]
    //拿到数组中的type
    let {type} = curPages.options
    //通过不同type值进入页面时
    this.handeleTabsByType(type-1)
    //调用请求方法
    // this.getOrders(type)
  },
  //请求数据方法
  // async getOrders(type){   
  //   const orders = await request({url:'',data:type})
  //   this.setData({
  //     orders
  //   })
  // },
  //封装tabs激活选中不同标题方法
  handeleTabsByType(index){
    let {tabs}=this.data
    tabs.forEach((v,i)=>i===index?v.isActive=true:v.isActive=false)
    this.setData({
      tabs
    })
  },
  handleChangeItem(e){
    // console.log(e);
    const {index} = e.detail
    this.handeleTabsByType(index)
    //当标题改变时应从新发起请求 因为没有token所以无法请求
    // this.getorder(index+1)
  }  
})